﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace PIT.Labs.ProjectRepository.Owl2DotNet
{
    /// <summary>
    /// Represents an individual from an ontology
    /// </summary>
    public interface IIndividual : IEntity
    {
        /// <summary>
        /// Class that this individual is an instance of
        /// </summary>
        IEnumerable<IClass> InstanceOf { get; }

        /// <summary>
        /// Accessor for all data properties associated with this individual
        /// </summary>
        IDictionary<IDataProperty, IValue> DataProperties { get; }

        /// <summary>
        /// Accessor for all object properties associated with this individual
        /// </summary>
        IDictionary<IObjectProperty, IIndividual> ObjectProperties { get; }
    }
}
